Deklaration eines Datentyps in ST

Syntax
TYPE
  name1 : <data type declarations with optional initialization>;
  name2 : <data type declarations with optional initialization>;
  ...
END_TYPE 
Bedeutung

Deklaration von →anwenderdefinierter Datentypen, wobei name1 usw. ein →IEC-Bezeichner sein muss.
Die Deklaration ist in einem ST-Objekt möglich – darin erfolgt die Deklaration entweder im globalen →Namespace oder in einem deklarierten Namespace. TYPE und END_TYPE sind die →Schlüsselwörter für die Deklaration der anwenderdefinierten Datentypen. Nach name : geben Sie die Deklarationen des Datentyps selbst ein. Informationen über Deklaration und Zugriff finden Sie in den folgenden Abschnitten:

Die folgenden Beispiele finden Sie auch in den Beschreibungen des zugehörigen Datentyps. Dort finden Sie diese Beispiele und noch mehr Beispiele erläutert.

Beispiel
TYPE 
  TrafficLight : INT (Red := 1, Yellow:= 2, Green := 3);     (* data type with named values *)
 
  myType: ARRAY [1..9] OF INT := [1, 2, 3];                  (* array data type, base type = 'INT' *)   
 
  RangeS : STRUCT                                            (* structured data type *)   
    signal   : BOOL;       
    scaleMin : DINT;  
    scaleMax : DINT; 
  END_STRUCT;
 
  typeScalings : ARRAY [1..5] OF myINT := [2(3), 2(), 4];    (* array data type, base type = 'myINT' *)
  RangeConf    : RangeS := (scaleMin := -5, scaleMax := 5);  (* derived data type, base type = 'RangeS' *)
 
  myINT : INT := 5;                                          (* derived data type, base type = 'INT' *)
END_TYPE

Zusätzlich dürfen Sie die folgenden Sprachelemente für ST bei der Deklaration eines Datentypen verwenden: